/**********************************************************************************/
/**
 * @file si__mod_tx_mhl_rcp_table.c
 *
*****************************************************************************/

#define MHL_DEV_LD_DISPLAY                  (0x01 << 0)
#define MHL_DEV_LD_VIDEO                    (0x01 << 1)
#define MHL_DEV_LD_AUDIO                    (0x01 << 2)
#define MHL_DEV_LD_MEDIA                    (0x01 << 3)
#define MHL_DEV_LD_TUNER                    (0x01 << 4)
#define MHL_DEV_LD_RECORD                   (0x01 << 5)
#define MHL_DEV_LD_SPEAKER                  (0x01 << 6)
#define MHL_DEV_LD_GUI                      (0x01 << 7)


#define MHL_MAX_RCP_KEY_CODE    (0x7F + 1)  // inclusive

unsigned char rcpSupportTable[MHL_MAX_RCP_KEY_CODE] = {
    (MHL_DEV_LD_GUI),       // 0x00 = Select
    (MHL_DEV_LD_GUI),       // 0x01 = Up
    (MHL_DEV_LD_GUI),       // 0x02 = Down
    (MHL_DEV_LD_GUI),       // 0x03 = Left
    (MHL_DEV_LD_GUI),       // 0x04 = Right
    0, 0, 0, 0,             // 05-08 Reserved
    (MHL_DEV_LD_GUI),       // 0x09 = Root Menu
    0, 0, 0,                // 0A-0C Reserved
    (MHL_DEV_LD_GUI),       // 0x0D = Select
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,   // 0E-1F Reserved
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),    // Numeric keys 0x20-0x29
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),
    0,                      // 0x2A = Dot
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),    // Enter key = 0x2B
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA | MHL_DEV_LD_TUNER),    // Clear key = 0x2C
    0, 0, 0,                // 2D-2F Reserved
    (MHL_DEV_LD_TUNER),     // 0x30 = Channel Up
    (MHL_DEV_LD_TUNER),     // 0x31 = Channel Dn
    (MHL_DEV_LD_TUNER),     // 0x32 = Previous Channel
    (MHL_DEV_LD_AUDIO),     // 0x33 = Sound Select
    0,                      // 0x34 = Input Select
    0,                      // 0x35 = Show Information
    0,                      // 0x36 = Help
    0,                      // 0x37 = Page Up
    0,                      // 0x38 = Page Down
    0, 0, 0, 0, 0, 0, 0,    // 0x39-0x3F Reserved
    0,                      // 0x40 = Undefined

    (MHL_DEV_LD_SPEAKER),   // 0x41 = Volume Up
    (MHL_DEV_LD_SPEAKER),   // 0x42 = Volume Down
    (MHL_DEV_LD_SPEAKER),   // 0x43 = Mute
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO),  // 0x44 = Play
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_RECORD),  // 0x45 = Stop
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_RECORD),  // 0x46 = Pause
    (MHL_DEV_LD_RECORD),    // 0x47 = Record
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO),  // 0x48 = Rewind
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO),  // 0x49 = Fast Forward
    (MHL_DEV_LD_MEDIA),     // 0x4A = Eject
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA),   // 0x4B = Forward
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_MEDIA),   // 0x4C = Backward
    0, 0, 0,                // 4D-4F Reserved
    0,                      // 0x50 = Angle
    0,                      // 0x51 = Subpicture
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 52-5F Reserved
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO),  // 0x60 = Play Function
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO),  // 0x61 = Pause the Play Function
    (MHL_DEV_LD_RECORD),    // 0x62 = Record Function
    (MHL_DEV_LD_RECORD),    // 0x63 = Pause the Record Function
    (MHL_DEV_LD_VIDEO | MHL_DEV_LD_AUDIO | MHL_DEV_LD_RECORD),  // 0x64 = Stop Function

    (MHL_DEV_LD_SPEAKER),   // 0x65 = Mute Function
    (MHL_DEV_LD_SPEAKER),   // 0x66 = Restore Mute Function
    0, 0, 0, 0, 0, 0, 0, 0, 0,                          // 0x67-0x6F Undefined or reserved
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0      // 0x70-0x7F Undefined or reserved
};

